\documentclass[twoside]{book}

% Packages required by doxygen
\usepackage{fixltx2e}
\usepackage{calc}
\usepackage{doxygen}
\usepackage[export]{adjustbox} % also loads graphicx
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{makeidx}
\usepackage{multicol}
\usepackage{multirow}
\PassOptionsToPackage{warn}{textcomp}
\usepackage{textcomp}
\usepackage[nointegrals]{wasysym}
\usepackage[table]{xcolor}

% Font selection
\usepackage[T1]{fontenc}
\usepackage[scaled=.90]{helvet}
\usepackage{courier}
\usepackage{amssymb}
\usepackage{sectsty}
\renewcommand{\familydefault}{\sfdefault}
\allsectionsfont{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\renewcommand{\DoxyLabelFont}{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}

% Page & text layout
\usepackage{geometry}
\geometry{%
  a4paper,%
  top=2.5cm,%
  bottom=2.5cm,%
  left=2.5cm,%
  right=2.5cm%
}
\tolerance=750
\hfuzz=15pt
\hbadness=750
\setlength{\emergencystretch}{15pt}
\setlength{\parindent}{0cm}
\setlength{\parskip}{3ex plus 2ex minus 2ex}
\makeatletter
\renewcommand{\paragraph}{%
  \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@parafont%
  }%
}
\renewcommand{\subparagraph}{%
  \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@subparafont%
  }%
}
\makeatother

% Headers & footers
\usepackage{fancyhdr}
\pagestyle{fancyplain}
\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}}
\fancyhead[CE]{\fancyplain{}{}}
\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}}
\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}}
\fancyhead[CO]{\fancyplain{}{}}
\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
\fancyfoot[LE]{\fancyplain{}{}}
\fancyfoot[CE]{\fancyplain{}{}}
\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
\fancyfoot[CO]{\fancyplain{}{}}
\fancyfoot[RO]{\fancyplain{}{}}
\renewcommand{\footrulewidth}{0.4pt}
\renewcommand{\chaptermark}[1]{%
  \markboth{#1}{}%
}
\renewcommand{\sectionmark}[1]{%
  \markright{\thesection\ #1}%
}

% Indices & bibliography
\usepackage{natbib}
\usepackage[titles]{tocloft}
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{5}
\makeindex

% Hyperlinks (required, but should be loaded last)
\usepackage{ifpdf}
\ifpdf
  \usepackage[pdftex,pagebackref=true]{hyperref}
\else
  \usepackage[ps2pdf,pagebackref=true]{hyperref}
\fi
\hypersetup{%
  colorlinks=true,%
  linkcolor=blue,%
  citecolor=blue,%
  unicode%
}

% Custom commands
\newcommand{\clearemptydoublepage}{%
  \newpage{\pagestyle{empty}\cleardoublepage}%
}

\usepackage{caption}
\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}

%===== C O N T E N T S =====

\begin{document}

% Titlepage & ToC
\hypersetup{pageanchor=false,
             bookmarksnumbered=true,
             pdfencoding=unicode
            }
\pagenumbering{alph}
\begin{titlepage}
\vspace*{7cm}
\begin{center}%
{\Large Baby\+OS \\[1ex]\large V0.\+0.\+2 }\\
\vspace*{1cm}
{\large Generated by Doxygen 1.8.14}\\
\end{center}
\end{titlepage}
\clearemptydoublepage
\pagenumbering{roman}
\tableofcontents
\clearemptydoublepage
\pagenumbering{arabic}
\hypersetup{pageanchor=true}

%--- Begin generated contents ---
\chapter{Module Index}
\input{modules}
\chapter{Data Structure Index}
\input{annotated}
\chapter{File Index}
\input{files}
\chapter{Module Documentation}
\input{group___a_t___exported___types_definitions}
\include{group___a_t___exported___defines}
\include{group___a_t___exported___macros}
\include{group___a_t___exported___variables}
\include{group___a_t___exported___functions}
\include{group___b_a_t_t_e_r_y___exported___types_definitions}
\include{group___b_a_t_t_e_r_y___exported___defines}
\include{group___b_a_t_t_e_r_y___s_t_a_t_u_s___defines}
\include{group___b_a_t_t_e_r_y___exported___macros}
\include{group___b_a_t_t_e_r_y___exported___variables}
\include{group___b_a_t_t_e_r_y___exported___functions}
\include{group___c_o_r_e___exported___types_definitions}
\include{group___c_o_r_e___exported___defines}
\include{group___c_o_r_e___exported___macros}
\include{group___c_o_r_e___exported___variables}
\include{group___c_o_r_e___exported___functions}
\include{group___c_r_c32___exported___types_definitions}
\include{group___c_r_c32___exported___defines}
\include{group___c_r_c32___exported___macros}
\include{group___c_r_c32___exported___variables}
\include{group___c_r_c32___exported___functions}
\include{group___d_e_v_i_c_e___exported___types_definitions}
\include{group___d_e_v_i_c_e___exported___defines}
\include{group___d_e_v_i_c_e___ctl_c_m_d___defines}
\include{group___d_e_v_i_c_e___exported___macros}
\include{group___d_e_v_i_c_e___exported___variables}
\include{group___d_e_v_i_c_e___exported___functions}
\include{group___e_r_r_o_r___exported___types_definitions}
\include{group___e_r_r_o_r___exported___defines}
\include{group___e_r_r_o_r___exported___macros}
\include{group___e_r_r_o_r___exported___variables}
\include{group___e_r_r_o_r___exported___functions}
\include{group___e_v_e_n_t___exported___types_definitions}
\include{group___e_v_e_n_t___exported___defines}
\include{group___e_v_e_n_t___exported___macros}
\include{group___e_v_e_n_t___exported___variables}
\include{group___e_v_e_n_t___exported___functions}
\include{group___f_i_f_o___exported___types_definitions}
\include{group___f_i_f_o___exported___defines}
\include{group___f_i_f_o___exported___macros}
\include{group___f_i_f_o___exported___variables}
\include{group___f_i_f_o___exported___functions}
\include{group___k_v___exported___types_definitions}
\include{group___k_v___exported___defines}
\include{group___k_v___exported___macros}
\include{group___k_v___exported___variables}
\include{group___k_v___exported___functions}
\include{group___l_u_n_a_r___exported___types_definitions}
\include{group___l_u_n_a_r___exported___defines}
\include{group___l_u_n_a_r___exported___macros}
\include{group___l_u_n_a_r___exported___variables}
\include{group___l_u_n_a_r___exported___functions}
\include{group___m_o_d_b_u_s___exported___types_definitions}
\include{group___m_o_d_b_u_s___exported___defines}
\include{group___m_o_d_b_u_s___exported___macros}
\include{group___m_o_d_b_u_s___exported___variables}
\include{group___m_o_d_b_u_s___exported___functions}
\include{group___o_t_a___exported___types_definitions}
\include{group___o_t_a___exported___defines}
\include{group___o_t_a___exported___macros}
\include{group___o_t_a___exported___variables}
\include{group___o_t_a___exported___functions}
\include{group___p_r_o_t_o_c_o_l___exported___types_definitions}
\include{group___p_r_o_t_o_c_o_l___exported___defines}
\include{group___p_r_o_t_o_c_o_l___exported___macros}
\include{group___p_r_o_t_o_c_o_l___exported___variables}
\include{group___p_r_o_t_o_c_o_l___exported___functions}
\include{group___s_d_a___exported___types_definitions}
\include{group___s_d_a___exported___defines}
\include{group___s_d_a___exported___macros}
\include{group___s_d_a___exported___variables}
\include{group___s_d_a___exported___functions}
\include{group___s_d_b___exported___types_definitions}
\include{group___s_d_b___exported___defines}
\include{group___s_d_b___exported___macros}
\include{group___s_d_b___exported___variables}
\include{group___s_d_b___exported___functions}
\include{group___s_d_c___exported___types_definitions}
\include{group___s_d_c___exported___defines}
\include{group___s_d_c___exported___macros}
\include{group___s_d_c___exported___variables}
\include{group___s_d_c___exported___functions}
\include{group___s_h_e_l_l___exported___types_definitions}
\include{group___s_h_e_l_l___exported___defines}
\include{group___s_h_e_l_l___exported___macros}
\include{group___s_h_e_l_l___exported___variables}
\include{group___s_h_e_l_l___exported___functions}
\include{group___x_o_r___s_u_m___exported___types_definitions}
\include{group___x_o_r___s_u_m___exported___defines}
\include{group___x_o_r___s_u_m___exported___macros}
\include{group___x_o_r___s_u_m___exported___variables}
\include{group___x_o_r___s_u_m___exported___functions}
\include{group___t_x___exported___types_definitions}
\include{group___t_x___exported___defines}
\include{group___t_x___exported___macros}
\include{group___t_x___exported___variables}
\include{group___t_x___exported___functions}
\include{group___u_t_c___exported___types_definitions}
\include{group___u_t_c___exported___defines}
\include{group___u_t_c___exported___macros}
\include{group___u_t_c___exported___variables}
\include{group___u_t_c___exported___functions}
\include{group___c_o_r_e___private___types_definitions}
\include{group___c_o_r_e___private___defines}
\include{group___c_o_r_e___private___macros}
\include{group___c_o_r_e___private___variables}
\include{group___c_o_r_e___private___function_prototypes}
\include{group___c_o_r_e___private___functions}
\include{group___d_e_v_i_c_e___private___types_definitions}
\include{group___d_e_v_i_c_e___private___defines}
\include{group___d_e_v_i_c_e___private___macros}
\include{group___d_e_v_i_c_e___private___variables}
\include{group___d_e_v_i_c_e___private___function_prototypes}
\include{group___d_e_v_i_c_e___private___functions}
\include{group___f8_l10_d___exported___types_definitions}
\include{group___f8_l10_d___exported___defines}
\include{group___f8_l10_d___exported___macros}
\include{group___f8_l10_d___exported___variables}
\include{group___f8_l10_d___exported___functions}
\include{group___s_u_a_r_t___exported___types_definitions}
\include{group___s_u_a_r_t___exported___defines}
\include{group___s_u_a_r_t___exported___macros}
\include{group___s_u_a_r_t___exported___variables}
\include{group___s_u_a_r_t___exported___functions}
\include{group___w25_x___exported___types_definitions}
\include{group___w25_x___exported___defines}
\include{group___w25_x___exported___macros}
\include{group___w25_x___exported___variables}
\include{group___w25_x___exported___functions}
\include{group___f8_l10_d___private___types_definitions}
\include{group___f8_l10_d___private___defines}
\include{group___f8_l10_d___private___macros}
\include{group___f8_l10_d___private___variables}
\include{group___f8_l10_d___private___function_prototypes}
\include{group___f8_l10_d___private___functions}
\include{group___s_u_a_r_t___private___types_definitions}
\include{group___s_u_a_r_t___private___defines}
\include{group___s_u_a_r_t___private___macros}
\include{group___s_u_a_r_t___private___variables}
\include{group___s_u_a_r_t___private___function_prototypes}
\include{group___s_u_a_r_t___private___functions}
\include{group___w25_x___private___types_definitions}
\include{group___w25_x___private___defines}
\include{group___w25_x___private___macros}
\include{group___w25_x___private___variables}
\include{group___w25_x___private___function_prototypes}
\include{group___w25_x___private___functions}
\include{group___h_a_l___private___types_definitions}
\include{group___h_a_l___private___defines}
\include{group___h_a_l___private___macros}
\include{group___h_a_l___private___variables}
\include{group___h_a_l___private___function_prototypes}
\include{group___h_a_l___private___functions}
\include{group___h_a_l___exported___types_definitions}
\include{group___h_a_l___exported___defines}
\include{group___h_a_l___exported___macros}
\include{group___h_a_l___exported___variables}
\include{group___h_a_l___exported___functions}
\include{group___u_t_i_l_s___private___types_definitions}
\include{group___u_t_i_l_s___private___defines}
\include{group___u_t_i_l_s___private___macros}
\include{group___u_t_i_l_s___private___variables}
\include{group___u_t_i_l_s___private___function_prototypes}
\include{group___u_t_i_l_s___private___functions}
\include{group___u_t_i_l_s___exported___types_definitions}
\include{group___u_t_i_l_s___exported___defines}
\include{group___u_t_i_l_s___exported___macros}
\include{group___u_t_i_l_s___exported___variables}
\include{group___u_t_i_l_s___exported___functions}
\include{group___b_a_b_y_o_s}
\include{group___a_t}
\include{group___b_a_t_t_e_r_y}
\include{group___c_o_r_e}
\include{group___b_o_s___c_r_c32}
\include{group___d_e_v_i_c_e}
\include{group___e_r_r_o_r}
\include{group___e_v_e_n_t}
\include{group___f_i_f_o}
\include{group___k_v}
\include{group___l_u_n_a_r}
\include{group___m_o_d_b_u_s}
\include{group___o_t_a}
\include{group___p_r_o_t_o_c_o_l}
\include{group___s_a_v_e___d_a_t_a}
\include{group___s_h_e_l_l}
\include{group___x_o_r___s_u_m}
\include{group___t_x}
\include{group___u_t_c}
\include{group___b___d_r_i_v_e_r}
\include{group___f8_l10_d}
\include{group___s_u_a_r_t}
\include{group___w25_x}
\include{group___b___h_a_l}
\include{group___h_a_l}
\include{group___u_t_i_l_s}
\chapter{Data Structure Documentation}
\input{structb_a_t___expected_resp__t}
\input{structb_a_t___info__t}
\input{structb_c_m_d___erase__t}
\input{structb_c_m_d___struct__t}
\input{structb_core_dev_table__t}
\input{structb_core_fd__t}
\input{structb_driver_interface__t}
\input{structb_error_info__t}
\input{structb_event_info__t}
\input{structb_f_i_f_o___info__t}
\input{structb_k_v___index__t}
\input{structb_k_v___info__t}
\input{structb_lunar_info__t}
\input{structb_m_b___info__t}
\input{structb_m_b___r_t_u_s___ack__t}
\input{structb_m_b___r_t_u_s___w__t}
\input{structb_o_t_a___ctl__t}
\input{structb_o_t_a___f_w_a_c_k__t}
\input{structb_o_t_a___f_w_data__t}
\input{structb_o_t_a___f_w_info__t}
\input{structb_protocol_head__t}
\input{structb_protocol_info__t}
\input{structb_s_d_a___info__t}
\input{structb_s_d_a___init_info__t}
\input{structb_s_d_a___struct__t}
\input{structb_s_d_b___info__t}
\input{structb_s_d_c___info__t}
\input{structb_s_d_c___struct__t}
\input{structb_t_x___info__t}
\input{structb_u_t_c___date_time__t}
\input{structb_w25_x___info__t}
\input{struct_s___r_x_info__t}
\chapter{File Documentation}
\input{ansi_8c}
\input{ansi_8h}
\input{ansi__port_8c}
\input{ansi__port_8h}
\input{b__at_8c}
\input{b__at_8h}
\input{b__battery_8c}
\input{b__battery_8h}
\input{b__config_8h}
\input{b__core_8c}
\input{b__core_8h}
\input{b__crc32_8c}
\input{b__crc32_8h}
\input{b__device_8c}
\input{b__device_8h}
\input{b__device__list_8h}
\input{b__driver_8h}
\input{b__error_8c}
\input{b__error_8h}
\input{b__event_8c}
\input{b__event_8h}
\input{b__f8l10d_8c}
\input{b__f8l10d_8h}
\input{b__fifo_8c}
\input{b__fifo_8h}
\input{b__hal_8c}
\input{b__hal_8h}
\input{b__kv_8c}
\input{b__kv_8h}
\input{b__lunar_8c}
\input{b__lunar_8h}
\input{b__modbus_8c}
\input{b__modbus_8h}
\input{b__os_8h}
\input{b__ota_8c}
\input{b__ota_8h}
\input{b__protocol_8c}
\input{b__protocol_8h}
\input{b__sda_8c}
\input{b__sda_8h}
\input{b__sdb_8c}
\input{b__sdb_8h}
\input{b__sdc_8c}
\input{b__sdc_8h}
\input{b__shell_8c}
\input{b__shell_8h}
\input{b__suart_8c}
\input{b__suart_8h}
\input{b__sum_8c}
\input{b__sum_8h}
\input{b__tx_8c}
\input{b__tx_8h}
\input{b__utc_8c}
\input{b__utc_8h}
\input{b__utils_8c}
\input{b__utils_8h}
\input{b__w25x_8c}
\input{b__w25x_8h}
\input{nr__micro__shell_8c}
\input{nr__micro__shell_8h}
\input{nr__micro__shell__config_8h}
\input{test_8c}
\input{test__fifo_8c}
%--- End generated contents ---

% Index
\backmatter
\newpage
\phantomsection
\clearemptydoublepage
\addcontentsline{toc}{chapter}{Index}
\printindex

\end{document}
